package com.mdl.sponsorme.modelo;

import com.mdl.sponsorme.bbdd.Usuario_bbdd;

public class GestorUsuario {
	private Usuario_bbdd usuario_bbdd = null;
	
	public GestorUsuario(){
		this.usuario_bbdd = new Usuario_bbdd();
	}
	
	/**
	 * Regista un usuario en el sistema
	 * 
	 * @return Si el registo es satisfactorio se retona OK
	 */	
	public boolean crearUsuario(Usuario usuario){
		
	  if(checkparamObl(usuario)){
	    this.usuario_bbdd.crearUsuario(usuario);
	    return true;
	  }else{return false;}
	}

	public ListaPubli getListaPubli(Usuario usuario){
		
		GestorPubli gestorPubli = new GestorPubli();
		ListaPubli listaPubli = new ListaPubli();

	    if(usuario.getId() == null && checkparamObl(usuario)){
		  listaPubli.addAll(gestorPubli.getListaPubli(usuario));
		}

		return listaPubli;
	}
	
	public ListaPubli getListaPubli(ListaUsuario listaUsuario){
		
		GestorPubli gestorPubli = new GestorPubli();
		ListaPubli listaPubli = new ListaPubli();

		for(Usuario usuario:listaUsuario){
		    if(checkparamObl(usuario)){
			  listaPubli.addAll(gestorPubli.getListaPubli(usuario));
			}
		}

		return listaPubli;
	}
	
	public ListaEquipo getListaEquipo(Usuario usuario){
		return usuario.getListaEquipo();
	}
	
	private boolean checkparamObl(Usuario usuario){
		boolean result = false;
		if( usuario.getNombre()!=null
		 && usuario.getCorreo()!=null
		 && usuario.getApellido1()!=null){
			result = true;
		}
		
		return result;
	}
}
